package com.whw.fy.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.whw.fy.config.IgnoreSwaggerParameter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Transient;

@ApiModel(value="com-whw-fy-entity-TeachingTodo")
@Data
public class TeachingTodo {
    /**
    * 教学待办id
    */
    @ApiModelProperty(value="教学待办id")
    private Integer teachingTodoId;

    /**
    * 教学待办发起人
    */
    @ApiModelProperty(value="教学待办发起人")
    private Integer teachingTodoPostUserId;

    /**
    * 教学代办类别
0：类别教学安排、1：教学督导、2：个案讨论、3：技术总结、4：其他
    */
    @ApiModelProperty(value="教学代办类别,0：类别教学安排、1：教学督导、2：个案讨论、3：技术总结、4：其他")
    private Integer teachingTodoType;

    /**
    * 教学待办说明
    */
    @ApiModelProperty(value="教学待办说明")
    private String teachingTodoExplain;

    /**
    * 紧急程度 0：一般 1：紧急 2：加急
    */
    @ApiModelProperty(value="紧急程度 0：一般 1：紧急 2：加急")
    private Integer teachingTodoUrgency;

    /**
    * 教学待办相关人员，存入员工id以“;”隔开
    */
    @ApiModelProperty(value="教学待办相关人员，存入员工id以“;”隔开")
    private String teachingTodoRelatedPersonnel;

    /**
    * 教学待办发起时间
    */
    @ApiModelProperty(value="教学待办发起时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date teachingTodoPostTime;

    /**
    * 教学待办状态 0:发起、1:准备、2:执行、3:完成
    */
    @ApiModelProperty(value="教学待办状态 0:发起、1:准备、2:执行、3:完成")
    private Integer teachingTodoStatus;

    /**
    * 情况说明
    */
    @ApiModelProperty(value="情况说明")
    private String teachingTodoInformationNote;

    /**
    * 工作安排
    */
    @ApiModelProperty(value="工作安排")
    private String teachingTodoWorkArrangement;

    /**
    * 执行说明
    */
    @ApiModelProperty(value="执行说明")
    private String teachingTodoImplementationInstructions;

    /**
    * 阶段总结
    */
    @ApiModelProperty(value="阶段总结")
    private String teachingTodoStageSummary;

    /**
    * 完成说明
    */
    @ApiModelProperty(value="完成说明")
    private String teachingTodoCompletionInstructions;

    /**
    * 后续安排
    */
    @ApiModelProperty(value="后续安排")
    private String teachingTodoFollowUpArrangements;

    @Transient
    @IgnoreSwaggerParameter
    private Staff teachingTodoPostUser;

    /**
     * 教学待办相关人员，存入员工id以“;”隔开
     */
    @Transient
    @ApiModelProperty(value="教学待办相关人员名称（只读）")
    private String teachingTodoRelatedPersonnelName;

}